RATS: Resource Aware Thread Scheduling for JVM level Clustering
نویسنده
چکیده
In this work, we propose RATS, a middleware to enhance and extend the Terracotta framework for Java with the ability to transparently execute multi-threaded Java applications to provide a singlesystem image. It supports efficient scheduling of threads, according to available resources, across several nodes in a Terracotta cluster, taking advantage of the extra computational and memory resources available. It also supports profiling to gather application characteristics such as dispersion of thread workload, thread interarrival time and resource usage of the application. It uses bytecode instrumentations to profile and add clustering capabilities to multi-threaded Java applications, as well as extra synchronization if needed. We developed a range of alternative scheduling heuristics and classify them based on the application and cluster behavior. The middleware is tested with a cpu-intensive application with varying thread characteristics to assess and classify the scheduling heuristics with respect to application speed-ups and load balancing.
منابع مشابه
Efficient Thread Scheduling for Distributed Java VM
In this work, we propose RATS, a middleware to enhance and extend the Terracotta framework for Java with the ability to transparently execute multi-threaded Java applications to provide a single-system image. It supports efficient scheduling of threads, according to available resources, across several nodes in a Terracotta cluster, taking advantage of the extra computational and memory resource...
متن کاملLightweight Transparent Java Thread Migration for Distributed JVM
A distributed JVM on a cluster can provide a highperformance platform for running multi-threaded Java applications transparently. Efficient scheduling of Java threads among cluster nodes in a distributed JVM is desired for maintaining a balanced system workload so that the application can achieve maximum speedup. We present a transparent thread migration system that is able to support high-perf...
متن کاملDistributed Java Virtual Machine with Thread Migration
of thesis entitled “Distributed Java Virtual Machine with Thread Migration” submitted by Wenzhang Zhu for the degree of Doctor of Philosophy at the University of Hong Kong in August 2004 Recent advances in better Java class libraries and Just-in-Time (JIT) compilation techniques have greatly improved the performance of Java to match that of C/C++. To fully exploit Java’s multithreading feature ...
متن کاملA Fair Thread-Aware Memory Scheduling Algorithm for Chip Multiprocessor
In Chip multiprocessor (CMP) systems, DRAM memory is a critical resource shared among cores. Scheduled by one single memory controller, memory access requests from different cores may interfere with each other. This interference causes extra waiting time for threads and leads to negligible overall system performance loss. In conventional thread-unaware memory scheduling patterns, different thre...
متن کاملApplication-Level Scheduling Using AOP
Achieving sufficient execution performance is a challenging goal of software development. Unfortunately, violating performance requirements is often revealed at a late stage of the development. Fixing a performance problem at such a late stage is difficult in terms of cost and time. To solve this problem, this paper presents QoSWeaver, which is a tool suite for developing application-level sche...
متن کامل